/**
 * Copyright (c) 2022 Beijing Jiaotong University
 * PhotLab is licensed under [Open Source License].
 * You can use this software according to the terms and conditions of the [Open Source License].
 * You may obtain a copy of [Open Source License] at: [https://open.source.license/]
 *
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 *
 * See the [Open Source License] for more details.
 *
 * Author: Qing'ao Zhang
 * Created: Apr. 13, 2023
 * Supported by: National Key Research and Development Program of China
 */
export class MaterialProperty {
    public id: number;
    public waveLength: number;
    public real: number;
    public imag: number;

    constructor(id: number, waveLength: number, real: number, imag: number) {
        this.id = id;
        this.waveLength = waveLength;
        this.real = real;
        this.imag = imag;
    }
}

export class Material {
    public name: string;
    public color: string;
    public property: MaterialProperty[];

    constructor(name: string, color: string, property: MaterialProperty[] = []) {
        this.name = name;
        this.color = color;
        this.property = property;
    }
}